昨天介紹完了Java內最基本的兩種流程結構分別為for迴圈和while迴圈,今天要介紹一種較為特殊的迴圈以及迴圈的控制。
巢狀(Nested)迴圈
巢狀迴圈簡單來說就是指迴圈裡面可以包別的迴圈,舉一個例子:
要特別注意的地方在於不同層的迴圈設定的索引值也要不同,否則會錯亂造成無窮迴圈或程式無法執行。以上面的例子來說,當進入內部索引值為j的for迴圈後,就需要等此迴圈都跑完,才會回到外層索引值為i的for迴圈執行。
迴圈的控制:break中斷、continue從頭繼續
首先介紹break中斷的部分,當迴圈碰到break時,它會強制中斷當前的迴圈,不論迴圈後面還有多少程式碼都不會被執行。但要特別注意的是,它只會中斷它所在的迴圈,而不會影響其他迴圈的執行。
舉個例子:
再來介紹continue從頭繼續的部分,當迴圈碰到它時,不會像break一樣整個中斷,而是停在continue後,直接回到迴圈的開頭再繼續往下執行。所以迴圈內在continue後面的程式碼也不會再被執行。
舉個例子: